Interference cancellation in a spread spectrum communication system

ABSTRACT

A code division multiple access communication system transmits a pilot and traffic signal over a shared spectrum. The pilot and traffic signal have an associated code. Signals are received over the shared spectrum. The received signals are sampled. The samples are delayed to produce a window. The window has evenly time spaced samples. Each window sample is despread with a pilot code. A weight for each despread pilot code window sample is determined using an adaptive algorithm. Each window sample is despread with a traffic code. Each despread traffic code window sample is weighted with a corresponding weight of the determined weights. The despread traffic code window sample are combined as data of the traffic signal.

[0001] This application is a continuation of application Ser. No. 09/659,858, filed Sep. 11, 2000, which is a continuation-in-part of application Ser. No. 09/602,963, filed Jun. 23, 2000, which is a continuation of application Ser. No. 09/394,452, filed Sep. 10, 1999, now U.S. Pat. No. 6,115,406.

BACKGROUND

[0002] The present invention relates generally to signal transmission and reception in a wireless code division multiple access (CDMA) communication system. More specifically, the invention relates to reception of signals to reduce interference in a wireless CDMA communication system.

[0003] A prior art CDMA communication system is shown in FIG. 1. The communication system has a plurality of base stations 20-32. Each base station 20 communicates using spread spectrum CDMA with user equipment (UEs) 34-38 within its operating area. Communications from the base station 20 to each UE 34-38 are referred to as downlink communications and communications from each UE 34-38 to the base station 20 are referred to as uplink communications.

[0004] Shown in FIG. 2 is a simplified CDMA transmitter and receiver. A data signal having a given bandwidth is mixed by a mixer 40 with a pseudo random chip code sequence producing a digital spread spectrum signal for transmission by an antenna 42. Upon reception at an antenna 44, the data is reproduced after correlation at a mixer 46 with the same pseudo random chip code sequence used to transmit the data. By using different pseudo random chip code sequences, many data signals use the same channel bandwidth. In particular, a base station 20 will communicate signals to multiple UEs 34-38 over the same bandwidth.

[0005] For timing synchronization with a receiver, an unmodulated pilot signal is used. The pilot signal allows respective receivers to synchronize with a given transmitter allowing despreading of a data signal at the receiver. In a typical CDMA system, each base station 20 sends a unique pilot signal received by all UEs 34-38 within communicating range to synchronize forward link transmissions. Conversely, in some CDMA systems, for example in the B-CDMA™ air interface, each UE 34-38 transmits a unique assigned pilot signal to synchronize reverse link transmissions.

[0006] When a UE 34-36 or a base station 20-32 is receiving a specific signal, all the other signals within the same bandwidth are noise-like in relation to the specific signal. Increasing the power level of one signal degrades all other signals within the same bandwidth. However, reducing the power level too far results in an undesirable received signal quality. One indicator used to measure the received signal quality is the signal to noise ratio (SNR). At the receiver, the magnitude of the desired received signal is compared to the magnitude of the received noise. The data within a transmitted signal received with a high SNR is readily recovered at the receiver. A low SNR leads to loss of data.

[0007] To maintain a desired signal to noise ratio at the minimum transmission power level, most CDMA systems utilize some form of adaptive power control. By minimizing the transmission power, the noise between signals within the same bandwidth is reduced. Accordingly, the maximum number of signals received at the desired signal to noise ratio within the same bandwidth is increased.

[0008] Although adaptive power control reduces interference between signals in the same bandwidth, interference still exists limiting the capacity of the system. One technique for increasing the number of signals using the same radio frequency (RF) spectrum is to use sectorization. In sectorization, a base station uses directional antennas to divide the base station's operating area into a number of sectors. As a result, interference between signals in differing sectors is reduced. However, signals within the same bandwidth within the same sector interfere with one another. Additionally, sectorized base stations commonly assign different frequencies to adjoining sectors decreasing the spectral efficiency for a given frequency bandwidth. Accordingly, there exists a need for a system which further improves the signal quality of received signals without increasing transmitter power levels.

SUMMARY

[0009] A code division multiple access communication system transmits a pilot and traffic signal over a shared spectrum. The pilot and traffic signal have an associated code. Signals are received over the shared spectrum. The received signals are sampled. The samples are delayed to produce a window. The window has evenly time spaced samples. Each window sample is despread with a pilot code. A weight for each despread pilot code window sample is determined using an adaptive algorithm. Each window sample is despread with a traffic code. Each despread traffic code window sample is weighted with a corresponding weight of the determined weights. The despread traffic code window samples are combined as data of the traffic signal.

BRIEF DESCRIPTION OF THE DRAWING(S)

[0010]FIG. 1 is a prior art wireless spread spectrum CDMA communication system.

[0011]FIG. 2 is a prior art spread spectrum CDMA transmitter and receiver.

[0012]FIG. 3 is the transmitter of the invention.

[0013]FIG. 4 is the transmitter of the invention transmitting multiple data signals.

[0014]FIG. 5 is the pilot signal receiving circuit of the invention.

[0015]FIG. 6 is the data signal receiving circuit of the invention.

[0016]FIG. 7 is an embodiment of the pilot signal receiving circuit.

[0017]FIG. 8 is a least mean squared weighting circuit.

[0018]FIG. 9 is the data signal receiving circuit used with the pilot signal receiving circuit of FIG. 7.

[0019]FIG. 10 is an embodiment of the pilot signal receiving circuit where the output of each RAKE is weighted.

[0020]FIG. 11 is the data signal receiving circuit used with the pilot signal receiving circuit of FIG. 10.

[0021]FIG. 12 is an embodiment of the pilot signal receiving circuit where the antennas of the transmitting array are closely spaced.

[0022]FIG. 13 is the data signal receiving circuit used with the pilot signal receiving circuit of FIG. 12.

[0023]FIG. 14 is an illustration of beam steering in a CDMA communication system.

[0024]FIG. 15 is a beam steering transmitter.

[0025]FIG. 16 is a beam steering transmitter transmitting multiple data signals.

[0026]FIG. 17 is the data receiving circuit used with the transmitter of FIG. 14.

[0027]FIG. 18 is a pilot signal receiving circuit used when uplink and downlink signals use the same frequency.

[0028]FIG. 19 is a transmitting circuit used with the pilot signal receiving circuit of FIG. 18.

[0029]FIG. 20 is a data signal receiving circuit used with the pilot signal receiving circuit of FIG. 18.

[0030]FIG. 21 is a simplified receiver for reducing interference.

[0031]FIG. 22 is an illustration of a vector correlator/adaptive algorithm block using a least mean square error algorithm.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT(S)

[0032] The preferred embodiments will be described with reference to the drawing figures where like numerals represent like elements throughout. FIG. 3 is a transmitter of the invention. The transmitter has an array of antennas 48-52, preferably 3 or 4 antennas. For use in distinguishing each antenna 48-52, a different signal is associated with each antenna 56-60. The preferred signal to associate with each antenna is a pilot signal as shown in FIG. 3. Each spread pilot signal is generated by a pilot signal generator 56-60 using a different pseudo random chip code sequence and is combined by combiners 62-66 with the respective spread data signal. Each spread data signal is generated using data signal generator 54 by mixing at mixers 378-382 the generated data signal with a different pseudo random chip code sequence per antenna 48-52, D₁-D_(N). The combined signals are modulated to a desired carrier frequency and radiated through the antennas 48-52 of the array.

[0033] By using an antenna array, the transmitter utilizes spacial diversity. If spaced far enough apart, the signals radiated by each antenna 48-52 will experience different multipath distortion while traveling to a given receiver. Since each signal sent by an antenna 48-52 will follow multiple paths to a given receiver, each received signal will have many multipath components. These components create a virtual communication channel between each antenna 48-52 of the transmitter and the receiver. Effectively, when signals transmitted by one antenna 48-52 over a virtual channel to a given receiver are fading, signals from the other antennas 48-52 are used to maintain a high received SNR. This effect is achieved by the adaptive combining of the transmitted signals at the receiver.

[0034]FIG. 4 shows the transmitter as used in a base station 20 to send multiple data signals. Each spread data signal is generated by mixing at mixers 360-376 a corresponding data signal from generators 74-78 with differing pseudo random chip code sequences D₁₁-D_(NM). Accordingly, each data signal is spread using a different pseudo random chip code sequence per antenna 48-52, totaling N×M code sequences. N is the number of antennas and M is the number of data signals. Subsequently, each spread data signal is combined with the spread pilot signal associated with the antenna 48-52. The combined signals are modulated and radiated by the antennas 48-52 of the array.

[0035] The pilot signal receiving circuit is shown in FIG. 5. Each of the transmitted pilot signals is received by the antenna 80. For each pilot signal, a despreading device, such as a RAKE 82-86 as shown in the FIG. 5 or a vector correlator, is used to despread each pilot signal using a replica of the corresponding pilot signal's pseudo random chip code sequence. The despreading device also compensates for multipath in the communication channel. Each of the recovered pilot signals is weighted by a weighting device 88-92. Weight refers to both magnitude and phase of the signal. Although the weighting is shown as being coupled to a RAKE, the weighting device preferably also weights each finger of the RAKE. After weighting, all of the weighted recovered pilot signals are combined in a combiner 94. Using an error signal generator 98, an estimate of the pilot signal provided by the weighted combination is used to create an error signal. Based on the error signal, the weights of each weighting device 88-92 are adjusted to minimize the error signal using an adaptive algorithm, such as least mean squared (LMS) or recursive least squares (RLS). As a result, the signal quality of the combined signal is maximized.

[0036]FIG. 6 depicts a data signal receiving circuit using the weights determined by the pilot signal recovery circuit. The transmitted data signal is recovered by the antenna 80. For each antenna 48-52 of the transmitting array, the weights from a corresponding despreading device, shown as a RAKE 82-86, are used to filter the data signal using a replica of the data signal's spreading code used for the corresponding transmitting antenna. Using the determined weights for each antenna's pilot signal, each weighting device 106-110 weights the RAKE's despread signal with the weight associated with the corresponding pilot. For instance, the weighting device 88 corresponds to the transmitting antenna 48 for pilot signal 1. The weight determined by the pilot RAKE 82 for pilot signal 1 is also applied at the weighting device 106 of FIG. 6. Additionally, if the weights of the RAKE's fingers were adjusted for the corresponding pilots signal's RAKE 82-86, the same weights will be applied to the fingers of the data signal's RAKE 100-104. After weighting, the weighted signals are combined by the combiner 112 to recover the original data signal.

[0037] By using the same weights for the data signal as used with each antenna's pilot signal, each RAKE 82-86 compensates for the channel distortion experienced by each antenna's signals. As a result, the data signal receiving circuit optimizes the data signals reception over each virtual channel. By optimally combining each virtual channel's optimized signal, the received data signal's signal quality is increased.

[0038]FIG. 7 shows an embodiment of the pilot signal recovery circuit. Each of the transmitted pilots are recovered by the receiver's antenna 80. To despread each of the pilots, each RAKE 82-86 utilizes a replica of the corresponding pilot's pseudo random chip code sequence, P₁-P_(N) Delayed versions of each pilot signal are produced by delay devices 114-124. Each delayed version is mixed by a mixer 126-142 with the received signal. The mixed signals pass through sum and dump circuits 424-440 and are weighted using mixers 144-160 by an amount determined by the weight adjustment device 170. The weighted multipath components for each pilot are combined by a combiner 162-164. Each pilot's combined output is combined by a combiner 94. Since a pilot signal has no data, the combined pilot signal should have a value of 1+j0. The combined pilot signal is compared to the ideal value, 1+j0, at a subtractor 168. Based on the deviation of the combined pilot signal from the ideal, the weight of the weighting devices 144-160 are adjusted using an adaptive algorithm by the weight adjustment device 170.

[0039] A LMS algorithm used for generating a weight is shown in FIG. 8. The output of the subtractor 168 is multiplied using a mixer 172 with the corresponding despread delayed version of the pilot. The multiplied result is amplified by an amplifier 174 and integrated by an integrator 176. The integrated result is used to weight, W_(1M), the RAKE finger.

[0040] The data receiving circuit used with the embodiment of FIG. 7 is show for a base station receiver in FIG. 9. The received signal is sent to a set of RAKEs 100-104 respectively associated with each antenna 48-52 of the array. Each RAKE 100-104, produces delayed versions of the received signal using delay devices 178-188. The delayed versions are weighted using mixers 190-206 based on the weights determined for the corresponding antenna's pilot signal. The weighted data signals for a given RAKE 100-104 are combined by a combiner 208-212. One combiner 208-212 is associated with each of the N transmitting antennas 48-52. Each combined signal is despread M times by mixing at a mixer 214-230 the combined signal with a replica of the spreading codes used for producing the M spread data signals at the transmitter, D₁₁-D_(NM). Each despread data signal passes through a sum and dump circuit 232-248. For each data signal, the results of the corresponding sum and dump circuits are combined by a combiner 250-254 to recover each data signal.

[0041] Another pilot signal receiving circuit is shown in FIG. 10. The despreading circuits 82-86 of this receiving circuit are the same as FIG. 7. The output of each RAKE 82-86 is weighted using a mixer 256-260 prior to combining the despread pilot signals. After combining, the combined pilot signal is compared to the ideal value and the result of the comparison is used to adjust the weight of each RAKE's output using an adaptive algorithm. To adjust the weights within each RAKE 82-86, the output of each RAKE 82-86 is compared to the ideal value using a subtractor 262-266. Based on the result of the comparison, the weight of each weighting device 144-160 is determined by the weight adjustment devices 268-272.

[0042] The data signal receiving circuit used with the embodiment of FIG. 10 is shown in FIG. 11. This circuit is similar to the data signal receiving circuit of FIG. 9 with the addition of mixers 274-290 for weighting the output of each sum and dump circuit 232-248. The output of each sum and dump circuit 232-248 is weighted by the same amount as the corresponding pilot's RAKE 82-86 was weighted. Alternatively, the output of each RAKE's combiner 208-212 may be weighted prior to mixing by the mixers 214-230 by the amount of the corresponding pilot's RAKE 82-86 in lieu of weighting after mixing.

[0043] If the spacing of the antennas 48-52 in the transmitting array is small, each antenna's signals will experience a similar multipath environment. In such cases, the pilot receiving circuit of FIG. 12 may be utilized. The weights for a selected one of the pilot signals are determined in the same manner as in FIG. 10. However, since each pilot travels through the same virtual channel, to simplify the circuit, the same weights are used for despreading the other pilot signals. Delay devices 292-294 produce delayed versions of the received signal. Each delayed version is weighted by a mixer 296-300 by the same weight as the corresponding delayed version of the selected pilot signal was weighted. The outputs of the weighting devices are combined by a combiner 302. The combined signal is despread using replicas of the pilot signals' pseudo random chip code sequences, P₂-P_(n), by the mixers 304-306. The output of each pilot's mixer 304-306 is passed through a sum and dump circuit 308-310. In the same manner as FIG. 10, each despread pilot is weighted and combined.

[0044] The data signal recovery circuit used with the embodiment of FIG. 12 is shown in FIG. 13. Delay devices 178-180 produce delayed versions of the received signal. Each delayed version is weighted using a mixer 190-194 by the same weight as used by the pilot signals in FIG. 12. The outputs of the mixers are combined by a combiner 208. The output of the combiner 208 is inputted to each data signal despreader of FIG. 13.

[0045] The invention also provides a technique for adaptive beam steering as illustrated in FIG. 14. Each signal sent by the antenna array will constructively and destructively interfere in a pattern based on the weights provided each antenna 48-52 of the array. As a result, by selecting the appropriate weights, the beam 312-316 of the antenna array is directed in a desired direction.

[0046]FIG. 15 shows the beam steering transmitting circuit. The circuit is similar to the circuit of FIG. 3 with the addition of weighting devices 318-322. A target receiver will receive the pilot signals transmitted by the array. Using the pilot signal receiving circuit of FIG. 5, the target receiver determines the weights for adjusting the output of each pilot's RAKE. These weights are also sent to the transmitter, such as by using a signaling channel. These weights are applied to the spread data signal as shown in FIG. 15. For each antenna, the spread data signal is given a weight by the weighting devices 318-322 corresponding to the weight used for adjusting the antenna's pilot signal at the target receiver providing spatial gain. As a result, the radiated data signal will be focused towards the target receiver. FIG. 16 shows the beam steering transmitter as used in a base station sending multiple data signals to differing target receivers. The weights received by the target receiver are applied to the corresponding data signals by weighting devices 324-340.

[0047]FIG. 17 depicts the data signal receiving circuit for the beam steering transmitter of FIGS. 15 and 16. Since the transmitted signal has already been weighted, the data signal receiving circuit does not require the weighting devices 106-110 of FIG. 6.

[0048] The advantage of the invention's beam steering are two-fold. The transmitted data signal is focused toward the target receiver improving the signal quality of the received signal. Conversely, the signal is focused away from other receivers reducing interference to their signals. Due to both of these factors, the capacity of a system using the invention's beam steering is increased. Additionally, due to the adaptive algorithm used by the pilot signal receiving circuitry, the weights are dynamically adjusted. By adjusting the weights, a data signal's beam will dynamically respond to a moving receiver or transmitter as well as to changes in the multipath environment.

[0049] In a system using the same frequency for downlink and uplink signals, such as time division duplex (TDD), an alternate embodiment is used. Due to reciprocity, downlink signals experience the same multipath environment as uplink signals send over the same frequency. To take advantage of reciprocity, the weights determined by the base station's receiver are applied to the base station's transmitter. In such a system, the base station's receiving circuit of FIG. 18 is co-located, such as within a base station, with the transmitting circuit of FIG. 19.

[0050] In the receiving circuit of FIG. 18, each antenna 48-52 receives a respective pilot signal sent by the UE. Each pilot is filtered by a RAKE 406-410 and weighted by a weighting device 412-416. The weighted and filtered pilot signals are combined by a combiner 418. Using the error signal generator 420 and the weight adjustment device 422, the weights associated with the weighting devices 412-416 are adjusted using an adaptive algorithm.

[0051] The transmitting circuit of FIG. 19 has a data signal generator 342 to generate a data signal. The data signal is spread using mixer 384. The spread data signal is weighted by weighting devices 344-348 as were determined by the receiving circuit of FIG. 19 for each virtual channel.

[0052] The circuit of FIG. 20 is used as a data signal receiving circuit at the base station. The transmitted data signal is received by the multiple antennas 48-52. A data RAKE 392-396 is coupled to each antenna 48-52 to filter the data signal. The filtered data signals are weighted by weighting devices 398-402 by the weights determined for the corresponding antenna's received pilot and are combined at combiner 404 to recover the data signal. Since the transmitter circuit of FIG. 19 transmits the data signal with the optimum weights, the recovered data signal at the UE will have a higher signal quality than provided by the prior art.

[0053] An adaptive algorithm can also be used to reduce interference in received signals for a spread spectrum communication system. A transmitter in the communication system, which can be located in either a base station 20 to 32 or UE 34 to 36, transmits a spread pilot signal and a traffic signal over the same frequency spectrum. The pilot signal is spread using a pilot code, P, and the traffic signal is spread using a traffic code, C.

[0054] The simplified receiver 500 of FIG. 21 receives both the pilot and traffic signals using an antenna 502. The received signals are demodulated to a baseband signal by a demodulator 518. The baseband signal is converted into digital samples, such as by two analog to digital converters (ADC) 512,514. Each ADC 512,514 typically samples at the chip rate. To obtain a half-chip resolution, one ADC 514 is delayed with respect to the other ADC 512 by a one-half chip delay. The samples are processed by a filtering device, such two vector correlators 504, 508 as shown in FIG. 21 or a RAKE, to process the pilot signal. The vector correlators 504, 508, are used to despread various multipath components of the received pilot signal using the pilot code, P. By using two vector correlators 504, 508 as in FIG. 21, each half-chip component is despread, such as for a 10 chip window to despread 21 components. Each despread component is sent to an adaptive algorithm block 506 to determine an optimum weight for each despread component to minimize interference in the received pilot signal. The adaptive algorithm block 506 may use a minimum mean square error (MMSE) algorithm such as a least mean square error algorithm.

[0055] One combination vector correlator/adaptive algorithm block using a LMS algorithm and half-chip resolution is shown in FIG. 22. The pilot code is delayed by a group of delay devices 520 ₁ to 520 _(N) and 522 ₁ to 522 _(N). Each of the ADC samples is despread such as by mixing it with timed versions of the pilot code, P, by mixers 524 ₁ to 524 _(N) and 526 ₁ to 526 _(N). The mixed signals are processed by sum and dump circuits 528 ₁ to 528 _(N) and 530 ₁ to 530 _(N) to produce despread components of the pilot signal. By using two ADCs 512, 514 with a half-chip sampling delay and two vector correlators 504, 508, despread components at half-chip intervals are produced such as 21 components for a 10 chip window. Each despread version is weighted by a weight, W₁₁ to W_(2N), such as by using a weighting device, 544 ₁ to 544 _(N) and 546 ₁ to 546 _(N). The weighted versions are combined, such as by using a summer 528. The combined signal is compared to the complex transmitted value of pilot signal, such as 1+j for a pilot signal in the third generation wireless standard, to produce an error signal, e. The comparison may be performed by a subtractor 550 by subtracting the combined signal from the ideal, 1+j. The error signal, e, is mixed using mixers 532 ₁ to 532 _(N) and 534 ₁ to 534 _(N) with each despread version. Each mixed version is amplified and integrated, such as by using an amplifier 536 ₁ to 536 _(N) and 538 ₁ to 538 _(N) and an integrator 540 ₁ to 540 _(N) and 542 ₁ to 542 _(N). The amplified and integrated results are refined weights, W₁₁ to W_(2N), for further weighting of the despread versions. Using the least mean square algorithm, the weights, W₁₁ to W_(2N), will be selected as to drive the combined signal to its ideal value.

[0056] The received signal is also processed by an adaptive filter 510 with the weights, W₁₁ to W_(2N), determined for the pilot signal components. Since the pilot signal and the traffic signal are transmitted over the same frequency spectrum, the two signals experience the same channel characteristics. As a result, the pilot weights, W₁₁ to W_(2N), applied to the traffic signal components reduces interference in the received traffic signal. Additionally, if the pilot and channel signals were sent using orthogonal spreading codes, the orthogonality of the received channel signal is restored after weighting. The restored orthogonality substantially reduces correlated interference from other traffic channels that occurs as a result of the deorthogonalization due to channel distortion. The weighted received signal is despread by a traffic despreader 516 using the corresponding traffic code to recover the traffic data. 

What is claimed is:
 1. A method for receiving a traffic signal in a code division multiple access communication system, the system transmitting a pilot signal and a traffic signal over a shared spectrum, the pilot and traffic signal having an associated code, the method comprising: receiving signals over the shared spectrum; sampling the received signals to produce samples; delaying the samples to produce a window, the window having evenly time spaced samples; despreading each window sample with a pilot code; determining a weight for each despread pilot code window sample using an adaptive algorithm; despreading each window sample with a traffic code; weighting each despread traffic code window sample with a corresponding weight of the determined weights; and combining each despread traffic code window sample as data of the traffic signal.
 2. The method of claim 1 wherein the adaptive algorithm is a minimum mean square error algorithm.
 3. The method of claim 1 wherein the adaptive algorithm is a least mean square error algorithm.
 4. The method of claim 1 wherein the evenly spaced samples are evenly spaced at half chip intervals.
 5. The method of claim 4 wherein the window spans ten chips.
 6. The method of claim 1 wherein the adaptive algorithm comprises comparing a combination of the despread pilot code window samples with an ideal value to produce an error signal and using the error signal to determine the weight for each despread pilot code window sample.
 7. The method of claim 6 wherein the ideal value is 1+j.
 8. A user equipment for use in code division multiple access communication system, the system having a base station transmitting a pilot and traffic signal over a shared spectrum, the pilot and traffic signal having an associated code, the user equipment comprising: means for receiving signals over the shared spectrum; means for sampling the received signals to produce samples; means for delaying the samples to produce a window, the window having evenly time spaced samples; means for despreading each window sample with a pilot code; means for determining a weight for each despread pilot code window sample using an adaptive algorithm; means for despreading each window sample with a traffic code; means for weighting each despread traffic code window sample with a corresponding weight of the determined weights; and means for combining each despread traffic code window sample as data of the traffic signal.
 9. The user equipment of claim 8 wherein the adaptive algorithm is a minimum mean square error algorithm.
 10. The user equipment of claim 8 wherein the adaptive algorithm is a least mean square error algorithm.
 11. The user equipment of claim 8 wherein the evenly spaced samples are evenly spaced at half chip intervals.
 12. The user equipment of claim 11 wherein the window spans ten chips.
 13. The user equipment of claim 8 wherein the adaptive algorithm comprises comparing a combination of the despread pilot code window samples with an ideal value to produce an error signal and using the error signal to determine the weight for each despread pilot code window sample.
 14. The user equipment of claim 13 wherein the ideal value is 1+j.
 15. A receiver for use in a code division multiple access communication system, the system transmitting a pilot and traffic signal over a shared spectrum, the pilot and traffic signal having an associated code, the user equipment comprising: an antenna for receiving signals over the shared spectrum; an analog to digital converter for sampling the received signals over the shared spectrum; a plurality of delays for delaying the samples to produce a window, the window having evenly time spaced samples; a first plurality of despreaders for despreading each window sample with a pilot code; an adaptive algorithm block for determining a weight for each despread pilot code window sample using an adaptive algorithm; a second plurality of despreaders for despreading each window sample with a traffic code; a plurality of weighting devices for weighting each despread traffic code window sample with a corresponding weight of the determined weights; and a combiner for combining each despread traffic code window sample as data of the traffic signal.
 16. The receiver of claim 15 wherein the adaptive algorithm is a minimum mean square error algorithm.
 17. The receiver of claim 15 wherein the adaptive algorithm is a least mean square error algorithm.
 18. The receiver of claim 15 wherein the analog to digital converter comprises two analog to digital converters sampling at a half chip separation, the two analog digital converters sampling at the chip rate.
 19. The receiver of claim 18 wherein the window spans ten chips.
 20. The receiver of claim 15 wherein the adaptive algorithm comprises comparing a combination of the despread pilot code window samples with an ideal value to produce an error signal and using the error signal to determine the weight for each despread pilot code window sample.
 21. The receiver of claim 20 wherein the ideal value is 1+j. 